﻿/**********************************************************************************
 * Project Name :   
 * Remarks      :  
 * Class Name   :  UtilityEntity   
 * Version      :  v1.0.0.0 
 * Author       :  Joey Liang 
 * Description  : 
 * Created Time :  2013/5/22 0:24:49
 * Update Man   :  Joey Liang
 * Update Time  :  2013/5/22 0:24:49
************************************************************************/

using System;

namespace JoeyLibs.Utility
{
    /// <summary>
    /// 实体帮助类
    /// </summary>
    public class UtilityEntity
    {
        /// <summary>
        /// 获取实体属性值，并为对应字段赋值(适用于获取为空则获取默认值的情况,例如从配置文件读取)，一般用于Get属性
        /// </summary>
        /// <typeparam name="T">属性类型</typeparam>
        /// <param name="fieldValue">字段值</param>
        /// <param name="defaultValue">默认值</param>
        /// <param name="isSetDefaultValue">将字段值设为默认值的条件</param>
        /// <returns>获取到属性值</returns>
        public static T GetPropertyValue<T>(ref T fieldValue, T defaultValue, bool isSetDefaultValue = true)
        {
            if (isSetDefaultValue)
            {
                fieldValue = defaultValue;
            }
            return fieldValue;
        }
    }
}
